{-# LANGUAGE MultiParamTypeClasses #-}

module PriorityQueue.Class where

class Ord t => PriorityQueue s t where
  emptyPQ        :: s t
  getFirstFromPQ :: s t -> t
  insertInPQ     :: t -> s t -> s t
  pqIsEmpty      :: s t -> Bool
